chore(rust-plugins): update farm crates#142
Conversation
WalkthroughUpdates the release workflow to publish Rust packages without the beta tag and reformats a step line. Bumps multiple Rust workspace dependency versions in Cargo.toml and compacts the workspace members list formatting. Changes
Sequence Diagram(s)Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Possibly related PRs
Suggested reviewers
Poem
Pre-merge checks and finishing touches✅ Passed checks (3 passed)
✨ Finishing touches🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
⛔ Files ignored due to path filters (1)
Cargo.lockis excluded by!**/*.lock
📒 Files selected for processing (2)
.github/workflows/release-changeset.yml(2 hunks)Cargo.toml(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (6)
- GitHub Check: call-rust-build / Build and Upload Artifacts - win32-x64-msvc
- GitHub Check: call-rust-build / Build and Upload Artifacts - win32-ia32-msvc
- GitHub Check: call-rust-build / Build and Upload Artifacts - win32-arm64-msvc
- GitHub Check: call-rust-build / Build and Upload Artifacts - darwin-x64
- GitHub Check: call-rust-build / Build and Upload Artifacts - linux-x64-musl
- GitHub Check: call-rust-build / Build and Upload Artifacts - linux-x64-gnu
🔇 Additional comments (3)
Cargo.toml (2)
2-2: Workspace members glob looks fine; confirm it scopes only intended crates.If there are experimental crates or fixtures under rust-plugins/, consider excluding them to avoid accidental publishing/builds.
5-10: Coordinated farmfe 2.x→2.1.x bumps — manual verification requiredSandbox couldn't run cargo (error: no /proc/self/exe). Run locally and paste outputs of:
cargo update -w cargo tree -d | rg -nP '^(farmfe_(core|utils|toolkit|compiler)|farmfe_toolkit_plugin_types)' cargo tree -i farmfe_core cargo build -w --all-targetsConfirm farmfe_macro_plugin = 2.0.0 is intentionally not bumped, validate feature flags and MSRV compatibility, and ensure no split/duplicate farmfe versions in the dependency graph/Cargo.lock.
.github/workflows/release-changeset.yml (1)
142-142: Reusable workflow reference: confirm workflow_call and artifact names.Using ./.github/workflows/build.yaml is fine; ensure it has
on: workflow_calland emits artifacts in the${{github.sha}}-${abi}-${package}naming expected by the Move Artifacts step.
| publish: pnpm exec changeset publish | ||
| title: "Release: Rust Plugins (Beta)" | ||
| commit: "chore: release rust plugins (beta)" |
There was a problem hiding this comment.
Main branch now publishes Rust to npm “latest” but still labeled Beta — likely unintended.
Removing “--tag beta” means main publishes to the latest dist‑tag, while titles/commits still say Beta and JS still uses beta on main. This can push prerelease bits to “latest”.
Recommended fix (keep main as beta to match JS):
- publish: pnpm exec changeset publish
- title: "Release: Rust Plugins (Beta)"
- commit: "chore: release rust plugins (beta)"
+ publish: pnpm exec changeset publish --tag beta
+ title: "Release: Rust Plugins (Beta)"
+ commit: "chore: release rust plugins (beta)"Alternative (make main stable): also update job title/commit and align JS job in a follow‑up.
📝 Committable suggestion
‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.
| publish: pnpm exec changeset publish | |
| title: "Release: Rust Plugins (Beta)" | |
| commit: "chore: release rust plugins (beta)" | |
| publish: pnpm exec changeset publish --tag beta | |
| title: "Release: Rust Plugins (Beta)" | |
| commit: "chore: release rust plugins (beta)" |
🤖 Prompt for AI Agents
.github/workflows/release-changeset.yml lines 121-123: the publish step
currently runs "pnpm exec changeset publish" which will push packages to the
"latest" dist-tag while the job title/commit message and the JS pipeline still
treat main as Beta; restore explicit prerelease behavior by adding the "--tag
beta" flag to the publish command (e.g., pnpm exec changeset publish --tag beta)
so main continues to publish under the beta dist-tag, and update the job
title/commit message if needed to remain consistent (or, if you intend to make
main stable, instead change the title/commit and align the JS job to remove
beta).
Summary by CodeRabbit